package com.middlegroup.payadmin.mapper;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.middlegroup.payadmin.pojo.dto.ChannelsDto;
import com.middlegroup.payadmin.pojo.po.Channels;
import com.middlegroup.payadmin.pojo.po.SubjectChannels;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * <p>
 * 主体通道表 Mapper 接口
 * </p>
 *
 * @author pc123
 * @since 2019-01-04
 */
public interface SubjectChannelsMapper extends BaseMapper<SubjectChannels> {


    /**根据环节获取主体下的通道列表
     * @param subjectCode 主体id
     * @param serviceParType 环节
     * @return
     */
    List<SubjectChannels> getSubjectChannelsByParType(@Param("subjectCode") String subjectCode,@Param("serviceParType") Long serviceParType);


    /**获取主体为添加的通道
     * @param serviceType
     * @param subjectCode
     * @return
     */
    List<Channels> waitChannelsList(@Param("serviceType") String serviceType ,@Param("subjectCode") String subjectCode);

    /**插入或者自动根据键更新
     * @param subjectChannels
     * @return
     */
    int saveOrUpdate(SubjectChannels subjectChannels);

    /**根据主体code和通道类型获取主体拥有的通道
     * @param serviceType
     * @param subjectCode
     * @return
     */
    List<ChannelsDto> getChannelsBySubjectCode(@Param("serviceType") String serviceType, @Param("subjectCode") String subjectCode,@Param("merchantCode") String merchantCode);
}
